package com.unionpay.upyzt.resp;

import java.time.LocalDateTime;
import java.util.Map;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.experimental.Accessors;


/**
 * 批量提现确认响应
 */
@Getter
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
public class WithdrawalConfirmResp extends UpyztResp {

    /**
     * 系统订单号
     */
    private String withdrawalConfirmId;

    /**
     * 平台批次订单号
     */
    private String outBatchOrderNo;

    /**
     * 交易状态:
     *
     * processing: 未全部提现完成
     * succeeded: 全部提现成功
     * failed: 全部提现失败
     * partially: 部分提现成功
     */
    private String status;

    /**
     * 总金额
     */
    private Long totalAmount;

    /**
     * 平台手续费，单位分
     */
    private Long totalServiceFee;

    /**
     * 总笔数
     */
    private Integer totalCount;

    /**
     * 创建时间
     */
    private LocalDateTime createdAt;

    /**
     * 处理完成时间
     */
    private LocalDateTime finishedAt;

    /**
     * 全部提现记录 key：提现id, 提现状态（0-未处理、1-成功、2、失败）
     */
//    private Map<String,String> totalRecord;

    /**
     * 失败原因。
     */
    private String reason;
}
